package com.example.passport.service;


import com.example.common.exception.BusinessException;
import com.example.interceptor.UserContext;
import com.example.passport.dto.RoleCreateDto;
import com.example.passport.dto.RoleTaskCreateDto;
import com.example.passport.dto.RoleTaskDto;
import com.example.passport.dto.TaskDto;
import com.example.passport.entity.Role;
import com.example.passport.entity.RoleTask;
import com.example.passport.entity.User;
import com.example.passport.entity.UserRole;
import com.example.passport.mapper.RoleTaskMapper;
import org.springframework.beans.BeanUtils;
import org.springframework.stereotype.Service;

import javax.annotation.Resource;
import java.util.List;

@Service
public class TaskService {
//    @Resource
//    RoleTaskMapper roleTaskMapper;
//    @Resource
//    UserRoleService userRoleService;
//
//
//    /**
//     * 验证权限
//     */
//    public boolean can(long userId, String taskCode) {
//
//        // id为1的是超管
//        if (userId == 1) {
//            return true;
//        }
//
//        List<UserRole> userRoleList = userRoleService.findById(userId);
//        boolean becan = false;
//        for (UserRole key : userRoleList) {
//            if (roleTaskMapper.check(key.getRoleId(), taskCode) == 1) {
//                becan = true;
//            }
//        }
//        return becan;
//    }
//
//
//    /**
//     * 新增权限
//     */
//    public void create(RoleTaskCreateDto roleTaskCreateDto) {
//        if (roleTaskMapper.check(roleTaskCreateDto.getRoleId(), roleTaskCreateDto.getTaskCode()) == 1) {
//            throw new BusinessException("权限已存在");
//        }
//        roleTaskMapper.create(roleTaskCreateDto);
//    }
//
//    /**
//     * 删除权限
//     */
//    public void delete(RoleTaskCreateDto roleTaskCreateDto) {
//
//        if (roleTaskMapper.delete(roleTaskCreateDto) != 1) {
//            throw new BusinessException("操作失败");
//        }
//    }
//
//    /**
//     * 修改权限（添加）
//     */
//    public void update(TaskDto taskDto) {
//        //删除全部
//        roleTaskMapper.deleteByRole(taskDto);
//        //逐个添加
//        for (RoleTask roleTask : taskDto.getRoleTaskList()) {
//            RoleTaskCreateDto roleTaskCreateDto = new RoleTaskCreateDto();
//            BeanUtils.copyProperties(roleTask, roleTaskCreateDto);
//            roleTaskCreateDto.setRoleId(taskDto.getRoleId());
//            roleTaskMapper.create(roleTaskCreateDto);
//        }
//    }
}
